x86: fix IRQ migration when using directed EOI (broken with c/s 20465)
authorKeir Fraser <keir@xen.org>
Wed, 1 Dec 2010 20:10:27 +0000 (20:10 +0000)
committerKeir Fraser <keir@xen.org>
Wed, 1 Dec 2010 20:10:27 +0000 (20:10 +0000)
commit190137976919ce00b4188b7c23c1ceb3893f5c76
tree78d88e67a3f224eaac99ed007c26f669506a02ef
parent4a380f72ba251011c35216ab7a6f6918b5d0485e
x86: fix IRQ migration when using directed EOI (broken with c/s 20465)

In directed-EOI mode, there is no chance to do the migration in
mask_and_ack_level_ioapic_irq(), as the remote IRR bit can't possibly
be clear after issuing the EOI to the LAPIC. Consequently, there's no
point to even try. Instead, migration must be done in
end_level_ioapic_irq(), and it requires masking the interrupt source
prior to issuing the EOI to the IO-APIC.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen/arch/x86/io_apic.c